Улучшить эту документацию Просмотреть исходный код input[number]
- input в модуле ng
Обзор
Текстовое поле с валидацией и преобразованием чисел. Устанавливает ошибку валидации number если введенное значение не является корректным числом.
number, иначе AngularJS выбросит ошибку. Обратите внимание, что строка, содержащая число, недостаточна. См. документацию по ошибке numfmt для получения дополнительной информации и примера преобразования модели, если это необходимо.
Известные проблемы
HTML5 валидация ограничений и allowInvalid
В браузерах, которые следуют спецификации HTML5, input[number] не работает как ожидается с ngModelOptions.allowInvalid. Если в поле вводится не число, браузер сообщит значение как пустую строку, что означает, что значения представления/модели в ngModel и, как следствие, значение области также будет пустой строкой.
Большие числа и валидация шага
Валидация step не будет работать правильно для очень больших чисел (например, 9999999999) из-за ограничений арифметики Javascript. Если вам необходимо обрабатывать большие числа, можно включить специализированные библиотеки (например, https://github.com/MikeMcl/big.js/) в AngularJS, переопределяя валидаторы для number и/или step, или применяя пользовательские валидаторы к элементу input[text]. Исходный код для типа input[number] может быть использован в качестве отправной точки для обоих реализаций.
Информация о директиве
- Эта директива выполняется на уровне приоритета 0.
Использование
<input type="number"
ng-model="string"
[name="string"]
[min="string"]
[max="string"]
[ng-min="string"]
[ng-max="string"]
[step="string"]
[ng-step="string"]
[required="string"]
[ng-required="string"]
[ng-minlength="number"]
[ng-maxlength="number"]
[pattern="string"]
[ng-pattern="string"]
[ng-change="string"]>
Аргументы
| Параметр | Тип | Подробности |
|---|---|---|
| ngModel | string |
Присваиваемое выражение AngularJS для привязки к данным. |
| name (необязательно) |
string |
Имя свойства формы, в котором публикуется элемент управления. |
| min (необязательно) |
string |
Устанавливает ключ ошибки валидации min, если введенное значение меньше min. Может быть интерполировано. |
| max (необязательно) |
string |
Устанавливает ключ ошибки валидации max, если введенное значение больше max. Может быть интерполировано. |
| ngMin (необязательно) |
string |
Как min, устанавливает ключ ошибки валидации min, если введенное значение меньше ngMin, но не запускает нативную валидацию HTML5. Принимает выражение. |
| ngMax (необязательно) |
string |
Как max, устанавливает ключ ошибки валидации max, если введенное значение больше ngMax, но не запускает нативную валидацию HTML5. Принимает выражение. |
| step (необязательно) |
string |
Устанавливает ключ ошибки валидации step, если введенное значение не соответствует ограничению step. Может быть интерполировано. |
| ngStep (необязательно) |
string |
Как step, устанавливает ключ ошибки валидации step, если введенное значение не соответствует ограничению ngStep, но не запускает нативную валидацию HTML5. Принимает выражение. |
| required (необязательно) |
string |
Устанавливает ключ ошибки валидации required, если значение не введено. |
| ngRequired (необязательно) |
string |
Добавляет атрибут required и ограничение валидации required к элементу, когда выражение ngRequired принимает значение true. Используйте ngRequired вместо required, когда вы хотите привязать данные к атрибуту required. |
| ngMinlength (необязательно) |
number |
Устанавливает ключ ошибки валидации minlength, если длина значения меньше minlength. |
| ngMaxlength (необязательно) |
number |
Устанавливает ключ ошибки валидации maxlength, если длина значения больше maxlength. Установка атрибута в отрицательное или нечисловое значение позволяет значениям представления любой длины. |
| pattern (необязательно) |
string |
Аналогично ngPattern, за исключением того, что значение атрибута — это фактическая строка, содержащая тело регулярного выражения, которое будет преобразовано в регулярное выражение, как в директиве ngPattern. |
| ngPattern (необязательно) |
string |
Устанавливает ключ ошибки валидации pattern, если ngModel $viewValue не соответствует RegExp, найденному путем вычисления выражения AngularJS, заданного в значении атрибута. Если выражение вычисляет объект RegExp, то он используется напрямую. Если выражение вычисляет строку, она преобразуется в RegExp после обертывания её в ^ и $ символы. Например, "abc" преобразуется в new RegExp('^abc$').Примечание: Избегайте использования флага g в RegExp, так как это приведет к тому, что каждый последующий поиск будет начинаться с индекса совпадения предыдущего поиска, таким образом, не учитывая все значение ввода. |
| ngChange (необязательно) |
string |
Выражение AngularJS, которое должно быть выполнено, когда ввод изменяется из-за взаимодействия пользователя с элементом ввода. |
Пример
© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
https://code.angularjs.org/1.8.2/docs/api/ng/input/input%5Bnumber%5D